//
//package com.app.netease.bean;
//
//import android.content.ContentValues;
//import android.database.SQLException;
//import android.util.Log;
//
//import com.tiger.quicknews.dao.ChannelDao;
//import com.tiger.quicknews.db.SQLHelper;
//
//import java.util.ArrayList;
//import java.util.List;
//import java.util.Map;
//
//public class ChannelManage {
//    public static ChannelManage channelManage;
//    /**
//     * 默认的用户�?择频道列�?     */
//    public static List<ChannelItem> defaultUserChannels;
//    /**
//     * 默认的其他频道列�?     */
//    public static List<ChannelItem> defaultOtherChannels;
//    private ChannelDao channelDao;
//    /** 判断数据库中是否存在用户数据 */
//    private boolean userExist = false;
//    static {
//        defaultUserChannels = new ArrayList<ChannelItem>();
//        defaultOtherChannels = new ArrayList<ChannelItem>();
//        defaultUserChannels.add(new ChannelItem(1, "头条", 1, 1));
//        defaultUserChannels.add(new ChannelItem(2, "足球", 2, 1));
//        defaultUserChannels.add(new ChannelItem(3, "娱乐", 3, 1));
//        defaultUserChannels.add(new ChannelItem(4, "体育", 4, 1));
//        defaultUserChannels.add(new ChannelItem(5, "财经", 5, 1));
//        defaultUserChannels.add(new ChannelItem(6, "科技", 6, 1));
//        // defaultUserChannels.add(new ChannelItem(7, "图片", 1, 0));
//        defaultOtherChannels.add(new ChannelItem(7, "CBA", 1, 0));
//        defaultOtherChannels.add(new ChannelItem(8, "笑话", 2, 0));
//        defaultOtherChannels.add(new ChannelItem(9, "汽车", 3, 0));
//        defaultOtherChannels.add(new ChannelItem(10, "时尚", 4, 0));
//        defaultOtherChannels.add(new ChannelItem(11, "北京", 5, 0));
//        defaultOtherChannels.add(new ChannelItem(12, "军事", 6, 0));
//        defaultOtherChannels.add(new ChannelItem(13, "房产", 7, 0));
//        defaultOtherChannels.add(new ChannelItem(14, "游戏", 8, 0));
//        defaultOtherChannels.add(new ChannelItem(15, "精�?", 9, 0));
//        defaultOtherChannels.add(new ChannelItem(16, "电台", 10, 0));
//        defaultOtherChannels.add(new ChannelItem(17, "情感", 11, 0));
//        defaultUserChannels.add(new ChannelItem(18, "电影", 12, 0));
//        defaultUserChannels.add(new ChannelItem(19, "NBA", 13, 0));
//        defaultUserChannels.add(new ChannelItem(20, "数码", 14, 0));
//        defaultUserChannels.add(new ChannelItem(21, "移动", 15, 0));
//        defaultUserChannels.add(new ChannelItem(22, "彩票", 16, 0));
//        defaultUserChannels.add(new ChannelItem(23, "教育", 17, 0));
//        defaultUserChannels.add(new ChannelItem(24, "论坛", 18, 0));
//        defaultOtherChannels.add(new ChannelItem(25, "旅游", 19, 0));
//        defaultOtherChannels.add(new ChannelItem(26, "手机", 20, 0));
//        defaultOtherChannels.add(new ChannelItem(27, "博客", 21, 0));
//        defaultOtherChannels.add(new ChannelItem(28, "社会", 22, 0));
//        defaultOtherChannels.add(new ChannelItem(29, "家居", 23, 0));
//        defaultOtherChannels.add(new ChannelItem(30, "暴雪", 24, 0));
//        defaultUserChannels.add(new ChannelItem(31, "亲子", 25, 0));
//    }
//
//    private ChannelManage(SQLHelper paramDBHelper) throws SQLException {
//        if (channelDao == null)
//            channelDao = new ChannelDao(paramDBHelper.getContext());
//        // NavigateItemDao(paramDBHelper.getDao(NavigateItem.class));
//        initDefaultChannel();
//        return;
//    }
//
//    /**
//     * 初始化频道管理类
//     * 
//     * @param paramDBHelper
//     * @throws SQLException
//     */
//    public static ChannelManage getManage(SQLHelper dbHelper) throws SQLException {
//        if (channelManage == null)
//            synchronized (ChannelManage.class) {
//                if (channelManage == null) {
//                    channelManage = new ChannelManage(dbHelper);
//                }
//            }
//        return channelManage;
//    }
//
//    /**
//     * 清除�?��的频�?     */
//    public void deleteAllChannel() {
//        channelDao.clearFeedTable();
//    }
//
//    /**
//     * 获取其他的频�?     * 
//     * @return 数据库存在用户配�?? 数据库内的用户�?择频�?: 默认用户选择频道 ;
//     */
//    public List<ChannelItem> getUserChannel() {
//        Object cacheList = channelDao.listCache(SQLHelper.SELECTED + "= ?", new String[] {
//                "1"
//        });
//        if (cacheList != null && !((List<?>) cacheList).isEmpty()) {
//            userExist = true;
//            List<Map<String, String>> maplist = (List) cacheList;
//            int count = maplist.size();
//            List<ChannelItem> list = new ArrayList<ChannelItem>();
//            for (int i = 0; i < count; i++) {
//                ChannelItem navigate = new ChannelItem();
//                navigate.setId(Integer.valueOf(maplist.get(i).get(SQLHelper.ID)));
//                navigate.setName(maplist.get(i).get(SQLHelper.NAME));
//                navigate.setOrderId(Integer.valueOf(maplist.get(i).get(SQLHelper.ORDERID)));
//                navigate.setSelected(Integer.valueOf(maplist.get(i).get(SQLHelper.SELECTED)));
//                list.add(navigate);
//            }
//            return list;
//        }
//        return defaultUserChannels;
//    }
//
//    /**
//     * 获取其他的频�?     * 
//     * @return 数据库存在用户配�?? 数据库内的其它频�?: 默认其它频道 ;
//     */
//    public List<ChannelItem> getOtherChannel() {
//        Object cacheList = channelDao.listCache(SQLHelper.SELECTED + "= ?", new String[] {
//                "0"
//        });
//        List<ChannelItem> list = new ArrayList<ChannelItem>();
//        if (cacheList != null && !((List) cacheList).isEmpty()) {
//            List<Map<String, String>> maplist = (List) cacheList;
//            int count = maplist.size();
//            for (int i = 0; i < count; i++) {
//                ChannelItem navigate = new ChannelItem();
//                navigate.setId(Integer.valueOf(maplist.get(i).get(SQLHelper.ID)));
//                navigate.setName(maplist.get(i).get(SQLHelper.NAME));
//                navigate.setOrderId(Integer.valueOf(maplist.get(i).get(SQLHelper.ORDERID)));
//                navigate.setSelected(Integer.valueOf(maplist.get(i).get(SQLHelper.SELECTED)));
//                list.add(navigate);
//            }
//            return list;
//        }
//        if (userExist) {
//            return list;
//        }
//        cacheList = defaultOtherChannels;
//        return (List<ChannelItem>) cacheList;
//    }
//
//    /**
//     * 保存用户频道到数据库
//     * 
//     * @param userList
//     */
//    public void saveUserChannel(List<ChannelItem> userList) {
//        for (int i = 0; i < userList.size(); i++) {
//            ChannelItem channelItem = userList.get(i);
//            channelItem.setOrderId(i);
//            channelItem.setSelected(Integer.valueOf(1));
//            channelDao.addCache(channelItem);
//        }
//    }
//
//    public void updateChannel(ChannelItem channelItem, String selected) {
//        ContentValues values = new ContentValues();
//        values.put("selected", selected);
//        values.put("id", channelItem.getId());
//        values.put("name", channelItem.getName());
//        values.put("orderId", channelItem.getOrderId());
//        channelDao.updateCache(values, " name = ?", new String[] {
//                channelItem.getName()
//        });
//    }
//
//    // /**
//    // * 保存单个用户频道到数据库
//    // *
//    // * @param userList
//    // */
//    //
//    // public void saveUserChannel(ChannelItem channelItem) {
//    // channelDao.addCache(channelItem);
//    // }
//    //
//    // public void deleteUserChannel(ChannelItem channelItem) {
//    // channelDao.deleteCache(" name=?", new String[] {
//    // channelItem.getName()
//    // });
//    // }
//    //
//    // /**
//    // * 保存单个其他频道到数据库
//    // *
//    // * @param userList
//    // */
//    // public void saveOtherChannel(ChannelItem channelItem) {
//    // channelDao.addCache(channelItem);
//    // }
//    //
//    // public void deleteOtherChannel(ChannelItem channelItem) {
//    // channelDao.deleteCache(" name=?", new String[] {
//    // channelItem.getName()
//    // });
//    // }
//
//    /**
//     * 保存其他频道到数据库
//     * 
//     * @param otherList
//     */
//    public void saveOtherChannel(List<ChannelItem> otherList) {
//        for (int i = 0; i < otherList.size(); i++) {
//            ChannelItem channelItem = otherList.get(i);
//            channelItem.setOrderId(i);
//            channelItem.setSelected(Integer.valueOf(0));
//            channelDao.addCache(channelItem);
//        }
//    }
//
//    /**
//     * 初始化数据库内的频道数据
//     */
//    private void initDefaultChannel() {
//        Log.d("deleteAll", "deleteAll");
//        deleteAllChannel();
//        saveUserChannel(defaultUserChannels);
//        saveOtherChannel(defaultOtherChannels);
//    }
//}
